//
//  AppDelegate.h
//  Pennyworth
//
//  Created by Chris Karr on 12/24/07.
//  Copyright 2007 Chris J. Karr. All rights reserved.
//

#import <Cocoa/Cocoa.h>
#import "User.h"
#import "LearnerView.h"
#import "TrainingManager.h"

#import "NDHotKeyEvent.h"


#define TERMINATE_NOTIFICATION @"Terminate Notification"

@interface AppDelegate : NSObject 
{
	NSStatusItem * theItem;
	IBOutlet NSMenu * menu;

	IBOutlet NSPanel * trainingPanel;
	IBOutlet NSPanel * predictionPanel;
	
	IBOutlet NSWindow * observationWindow;
	IBOutlet NSWindow * preferencesWindow;
	IBOutlet NSWindow * logWindow;
	IBOutlet NSWindow * learnersWindow;
	IBOutlet NSWindow * rulesWindow;

	IBOutlet NSArrayController * observations;
	IBOutlet User * user;
	
	IBOutlet LearnerView * learnerView;
	
	BOOL sensorsLoaded;
	
	NDHotKeyEvent * hotKey;
	IBOutlet TrainingManager * trainingManager;
}

- (IBAction) observations:(id) sender;
- (IBAction) predictions:(id) sender;
- (IBAction) preferences:(id) sender;
- (IBAction) logs:(id) sender;
- (IBAction) learners:(id) sender;
- (IBAction) rules:(id) sender;

- (NSString *) notePassword;

@end
